package com.onpositive.datamap.core;

import com.onpositive.data.diskstorage.AbstractValueAccessor;
import com.onpositive.datamap.IDataPropertyValue;
import com.onpositive.semantic.model.api.property.IProperty;

public interface IDataProperty extends IProperty{

	String id();

	String name();
	
	String group();
	
	int getPriority();
	
	String description();
	
	IDataPropertyValue getValue(IDataObject object);
	
	String simpleType();

	Object adaptFilterValue(String c);

	public static final String AVE="ave";
	public static final String MIN="min";
	public static final String MAX="max";
	public static final String SUM="sum";
	public static final String IDENT = "ident";
	
	
	IDataPropertyValue convert(Object value);

	IDataProperty clone(AbstractValueAccessor accessor);

}
